var mongoose = require('mongoose');

var MovieSchema = new mongoose.Schema({
    title:String,
    doctor:String,
    language:String,
    country:String,
    summary:String,
    flash:String,
    poster:String,
    year:Number,
    meta:{
        crateAt:{
            type:Date,
            default:Date.now()
        },
        updateAt:{
            type:Date,
            default:Date.now()
        }
    }
});

MovieSchema.pre('save', function (next) {
    if(this.isNew){
        this.meta.crateAt = this.meta.updateAt = Date.now();
    }else{
        this.meta.updateAt = Date.now();
    }
    next()
});

MovieSchema.static = {
    fetch:function(cb){
        return this.find({}).sort('meta.updateAt');
        exec(cb);
    },
    findById:function(id, cb){
        return this.findOne({_id:id});
        exec(cb);
    }
}

module.exports = MovieSchema;
